package com.appcan.base;


import java.util.List;
import java.util.Map;



public interface BaseBo<T> {

	public void insertBatchEntity(List<T> entry) throws BusinessException;
	
	public void saveEntity(T entry) throws BusinessException;
	
	public void updateEntity(T entry) throws BusinessException;
	
	public List<Object[]> createNativeAquery(String sql)throws BusinessException;
	
	public List<T> qyeryEntityByHql(String hsql)throws BusinessException;
	
   public int findListCount(Map<String, String> condition) throws BusinessException;
	
	public List<T> findList(int firstresult, int maxresult, Map<String, String> condition) throws BusinessException;
	
	public List<Object[]> findNativeList(int firstresult, int maxresult, Map<String, String> condition) throws BusinessException;
	
	public int findNativeListCount(Map<String, String> condition) throws BusinessException;
	
	public T findEntityById(Map<String, String> conditions) throws BusinessException;
	
	public String getSql(Map<String, String> conditions, boolean isCount);
	
	public String getNativeSql(Map<String, String> conditions, boolean isCount);

	
	public void delEntity(T t) throws BusinessException;
	
	public void deleteById(String tablename, String id) throws BusinessException;
	
	public void deleteBySql(String sql) throws BusinessException;
	
	public String findSingleValueListBySql(String sql) throws BusinessException;
	
	public Object quteryData(String billtype)  throws BusinessException;
	
	public void updateData(Map map,String typeCode) throws BusinessException;
}
